﻿<?xml version="1.0" encoding="utf-8"?>

<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:maml="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:doc="http://ddue.schemas.microsoft.com/authoring/internal" targetNamespace="http://ddue.schemas.microsoft.com/authoring/2003/5" elementFormDefault="qualified" attributeFormDefault="unqualified">

  <!-- Schema documentation -->
  <annotation>
    <documentation>
      This schema definition defines common structure types for the CS Schema.
      This schema is part of the base layer.
    </documentation>
  </annotation>

  <!-- include and import declarations -->
  <include schemaLocation="base.xsd" />

  <complexType name="listType" mixed="false">
    <choice minOccurs="1" maxOccurs="unbounded">
      <element ref="maml:listItem" />
      <element name="conditionalSection">
        <complexType>
          <sequence>
            <element ref="maml:conditions" />
            <element name="conditionalContent" type="maml:listType" />
          </sequence>
        </complexType>
      </element>
    </choice>
    <attributeGroup ref="maml:contentIdentificationSharingAndConditionGroup" />
    <attribute name="class" use="required">
      <annotation>
        <documentation>
          The class attribute describes the type of list.
        </documentation>
      </annotation>
      <simpleType>
        <restriction base="string">
          <enumeration value="bullet" />
          <enumeration value="nobullet" />
          <enumeration value="ordered" />
        </restriction>
      </simpleType>
    </attribute>
  </complexType>
    
  <!-- element declarations -->
  <element name="list" type="maml:listType">
    <annotation>
      <documentation>
        The list element describes content that should be displayed as a list.
      </documentation>
      <appinfo>
        <doc:localizable>n/a</doc:localizable>
        <doc:type>structure</doc:type>
      </appinfo>
    </annotation>
  </element>

  <element name="listItem" type="maml:sectionContentType">
    <annotation>
      <documentation>
        The listItem element describes an item within a list. The 
        content of the listItem element will be treated as a unit.
      </documentation>
      <appinfo>
        <doc:localizable>n/a</doc:localizable>
        <doc:type>structure</doc:type>
      </appinfo>
    </annotation>
  </element>
	
  <!-- group declarations -->
  <group name="structureListGroup">
    <annotation>
      <documentation>
        This group describes the common lists that can be used to describe
        list data.
      </documentation>
    </annotation>
    <choice>
      <element ref="maml:list" />
    </choice>
  </group>

</schema>